一起聊聊在python中读取和写入CSV文件-全球速递

来源:php中文网 | 2022-11-22 16:51:49 |

本篇文章给大家带来了关于Python 的相关知识,其中主要介绍了读取和写入CSV文件的相关内容,包括了导入CSV库、对CSV文件进行读写等等内容,下面一起来看一下,希望对大家有帮助。

CSV(Comma-Separated Values)即逗号分隔值,一种以逗号分隔按行存储的文本文件,所有的值都表现为字符串类型(注意:数字为字符串类型)。

如果CSV中有中文,应以utf-8编码读写.


(相关资料图)

1.导入CSV库

python中对csv文件有自带的库可以使用,当我们要对csv文件进行读写的时候直接导入即可。

import csv

2.对CSV文件进行读写

2.1 用列表形式写入CSV文件

语法:csv.writer(f): writer支持writerow(列表)单行写入,和writerows(嵌套列表)批量写入多行,无须手动保存。

import csvheader = ["name","age","QQ_num","wechat"]data = [["suliang","21","787991021","lxzy787991021"]]with open ("information.csv","w",encoding="utf-8",newline="") as fp:    # 写    writer =csv.writer(fp)    # 设置第一行标题头    writer.writerow(header)    # 将数据写入    writer.writerows(data)

结果: 注意,打开文件时应指定格式为w, 文本写入. 打开文件时,指定不自动添加新行newline=‘’,否则每写入一行就或多一个空行。

2.2 用列表形式读取CSV文件

语法:csv.reader(f, delimiter=‘,’) reader为生成器,每次读取一行,每行数据为列表格式,可以通过delimiter参数指定分隔符

import csvwith open("information.csv",encoding="utf-8")as fp:    reader = csv.reader(fp)    # 获取标题    header = next(reader)    print(header)    # 遍历数据    for i in reader:        print(i)

结果: 读取文件时文件路径务必要写对,不确定时可写绝对路径。要获取csv的内容则需要遍历再输出。

2.3 用字典形式写入csv文件

语法:csv.DicWriter(f): 写入时可使用writeheader()写入标题,然后使用writerow(字典格式数据行)或writerows(多行数据)

import csvheader = ["name","age"]data = [{"name":"suliang","age":"21"},        {"name":"xiaoming","age":"22"},        {"name":"xiaohu","age":"25"}]with open ("information.csv","w",encoding="utf-8",newline="") as fp:    # 写    writer =csv.DictWriter(fp,header)    # 写入标题    writer.writeheader()    # 将数据写入    writer.writerows(data)

结果:

2.4 用字典形式读取csv文件

语法:csv.DicReader(f, delimiter=‘,’) 直接将标题和每一列数据组装成有序字典(OrderedDict)格式,无须再单独读取标题行

import csvwith open("information.csv",encoding="utf-8")as fp:    reader = csv.DictReader(fp)    for i in reader        print(i)

结果:

附:csv读写的模式

r:以读方式打开文件,可读取文件信息

w: 已写方式打开文件,可向文件写入信息。如文件存在,则清空,再写入

a:以追加模式打开文件,打开文件可指针移至末尾,文件不存在则创建

r+:以读写方式打开文件,可对文件进行读和写操作

w+:消除文件内容,以读写方式打开文件

a+:以读写方式打开文件,文件指针移至末尾

b:以二进制打开文件

以上就是一起聊聊在python中读取和写入CSV文件的详细内容,更多请关注php中文网其它相关文章!

关键词: python